Scalable Video Codec (SVC) encodes video into a sequence of pictures with the highest image quality while ensuring that part of the encoded picture sequence (specifically, a partial sequence of frames intermittently selected from the total sequence of frames) can be decoded and used to represent the video with a low image quality.
Although it is possible to represent low image-quality video by receiving and processing part of a sequence of pictures encoded according to a scalable scheme, there is still a problem in that the image quality is significantly reduced if the bitrate is lowered. One solution to this problem is to provide an auxiliary picture sequence for low bitrates, for example, a sequence of pictures that have a small screen size and/or a low frame rate.
The auxiliary picture sequence is referred to as a base layer, and the main frame sequence is referred to as an enhanced or enhancement layer. When the base layer is provided, inter-layer prediction is performed to increase coding efficiency.
The SVC, which is a codec extended from Advanced Video Codec (AVC) (also referred to as ‘H.264’), can use Context-Adaptive Binary Arithmetic Coding (CABAC) for data compression. The CABAC is an entropy coding scheme which has been suggested for use in compression of a video signal coded in AVC.
The CABAC performs modeling for arithmetic coding of coding information of a macroblock, which is a specific syntax element, simply using corresponding coding information of an adjacent macroblock in the same layer. Appropriate modeling of coding information according to the probabilities of values of the coding information increases the compression rate of arithmetic coding.
However, the CABAC has not defined a standard for modeling coding information using information of a plurality of layers. Thus, when SVC providing a plurality of layers is employed, the CABAC cannot provide suitable modeling for coding information having a correlation between the plurality of layers.